package com.activiti.dao.service.spring;


import com.activiti.dao.ActivitiDao;
import com.activiti.dao.ActivitiSubDao;
import com.activiti.dao.model.Activiti_SubTaskInfo;
import com.activiti.dao.model.Activiti_SubTaskInfoRO;
import com.activiti.dao.model.Activiti_TaskInfo;
import com.activiti.dao.model.TaskVo;
import com.activiti.dao.service.ActivitiService;
import com.activiti.dao.service.TaskSubService;
import com.erp.hr.dao.model.HrStaffInfoRO;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.RuntimeService;
import org.activiti.engine.TaskService;
import org.activiti.engine.repository.ProcessDefinition;
import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;
import org.redragon.framework.hibernate.model.Pages;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Service
@Transactional(rollbackFor=Exception.class)
public class TaskSubServiceImpl implements TaskSubService {
    @Autowired
    private ActivitiSubDao activitiSubDao;

    @Override
    public void insertDataObject(Activiti_SubTaskInfo activiti_subTaskInfo) {
        activitiSubDao.insertDataObject(activiti_subTaskInfo);
    }

    @Override
    public void updateDataObject(Activiti_SubTaskInfo activiti_subTaskInfo) {
        activitiSubDao.updateDataObject(activiti_subTaskInfo);
    }

    @Override
    public void insertOrUpdateDataObject(Activiti_SubTaskInfo activiti_subTaskInfo) {
        activitiSubDao.insertOrUpdateDataObject(activiti_subTaskInfo);
    }

    @Override
    public void deleteDataObject(Activiti_SubTaskInfo activiti_subTaskInfo) {
        activitiSubDao.deleteDataObject(activiti_subTaskInfo);
    }

    @Override
    public List<Activiti_SubTaskInfo> getDataObjects() {
        return   activitiSubDao.getDataObjects();
    }

    @Override
    public Activiti_SubTaskInfo getDataObject(int i) {
        return  activitiSubDao.getDataObject(i);
    }

    @Override
    public Activiti_SubTaskInfo getDataObject(String s) {
        return  activitiSubDao.getDataObject(s);
    }

    @Override
    public List<Activiti_SubTaskInfo> getDataObjects(Activiti_SubTaskInfo activiti_subTaskInfo) {
        return  activitiSubDao.getDataObjects(activiti_subTaskInfo);
    }

    @Override
    public List<Activiti_SubTaskInfo> getDataObjects(Pages pages) {
        return null;
    }

    @Override
    public List<Activiti_SubTaskInfo> getDataObjects(Pages pages, Activiti_SubTaskInfo activiti_subTaskInfo) {
        return null;
    }

    @Override
    public List<Map<String, Object>> getDataObjectsArray(Pages pages, Activiti_SubTaskInfo activiti_subTaskInfo) {
        return null;
    }

    @Override
    public List<Activiti_SubTaskInfo> getDataObjectsForDataAuth(String s, Pages pages, Activiti_SubTaskInfo activiti_subTaskInfo) {
        return null;
    }

    @Override
    public List<Activiti_SubTaskInfoRO> getDataObjects(String procInstId) {
        return activitiSubDao.getDataObjects(procInstId);
    }

    @Override
    public List<Activiti_SubTaskInfoRO> getDataObjectsListOnlyLastTrue(String procInstId) {
        return activitiSubDao.getDataObjectsListOnlyLastTrue(procInstId);
    }
}
